package io.renren.modules.eightapp.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.renren.common.service.impl.CrudServiceImpl;
import io.renren.common.utils.ConvertUtils;
import io.renren.modules.eightapp.dao.EiNoticeInfoDao;
import io.renren.modules.eightapp.dto.EiNoticeInfoDTO;
import io.renren.modules.eightapp.entity.EiNoticeInfoEntity;
import io.renren.modules.eightapp.service.EiNoticeInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * 
 *
 * @author Mark 1132115960@gmail.com
 * @since 1.0.0 2022-12-29
 */
@Service
public class EiNoticeInfoServiceImpl extends CrudServiceImpl<EiNoticeInfoDao, EiNoticeInfoEntity, EiNoticeInfoDTO> implements EiNoticeInfoService {
    @Autowired
    private EiNoticeInfoDao eiNoticeInfoDao;

    @Override
    public QueryWrapper<EiNoticeInfoEntity> getWrapper(Map<String, Object> params){
        String id = (String)params.get("id");

        QueryWrapper<EiNoticeInfoEntity> wrapper = new QueryWrapper<>();
        wrapper.eq(StringUtils.isNotBlank(id), "id", id);

        return wrapper;
    }


    @Override
    public List<EiNoticeInfoDTO> getNoticeByVallageId(Integer vallageId) {
        QueryWrapper<EiNoticeInfoEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().select().eq(EiNoticeInfoEntity::getVillageId,vallageId);
        List<EiNoticeInfoEntity> eiNoticeInfoEntities = eiNoticeInfoDao.selectList(queryWrapper);
        List<EiNoticeInfoDTO> list = ConvertUtils.sourceToTarget(eiNoticeInfoEntities, EiNoticeInfoDTO.class);
        return list;
    }

    @Override
    public String getContentById(Integer id) {
        EiNoticeInfoEntity eiNoticeInfoEntity = eiNoticeInfoDao.selectById(id);
        String content = eiNoticeInfoEntity.getContent();
        return content;
    }
}